public class Test {
    public static void main(String[] args) {
//        LinkedList myList = new LinkedList();
        // -测试尾插
//        myList.add(3);
//        myList.add(5);
//        myList.add(3);
//        myList.add(3);
//        myList.add(5);
        // -测试头插
//        myList.addFirst(6);
//        myList.addFirst(7);
        // -测试任意位置插入（边界值、合理值均测试完毕）
//        myList.addIndex(-1, 9);
//        myList.addIndex(6, 9);
//        myList.addIndex(8, 10);
//        myList.addIndex(3, 12);
        // -打印
//        System.out.println(myList.size());
        // -测试删除（删除第一个目标值）
//        myList.removeAll(3);
        // -测试删除链表
//        myList.clear();
        // -打印链表
//        myList.display();
        // -删除节点
//        myList.removeAll(3);
//        myList.addIndex(-1, 12);

//        LinkedList.ChainNode cur = myList.head;
//        while(cur != null) {
//            System.out.print(cur.val + " ");
//            cur = cur.next;
//        }

        // 10/1测试：给链表新增尾节点，以使其能达到O（1）的插入，现在进行测试
        LinkedList myList = new LinkedList();
        myList.add(1);
        myList.add(2);
        myList.add(2);
        myList.add(2);

        // -1 测试1：先尾删再尾插
//        System.out.println("test1 -- before --");
//        myList.display();
//        myList.remove(4);
//        myList.add(9);
//        System.out.println("test1 -- after --");
//        myList.display();

        // -2 测试2：使用removeAll删除所有元素后再尾插
//        System.out.println("test2 -- before --");
//        myList.display();
//        myList.removeAll(2);
//        myList.add(9);
//        System.out.println("test2 -- after --");
//        myList.display();

        // -3 测试3：使用removeAll删除所有元素后再尾插
    }
}
